'''
Author: bodhi
Date: 2025-07-12 20:27:14
LastEditors: bodhi
LastEditTime: 2025-07-12 23:29:56
'''
import requests
from openai import OpenAI

client = OpenAI(
            api_key="sk-a2200d958f4c4bc8938e77fa97edfd21",  # 请确保这是有效的API密钥
            base_url="https://api.deepseek.com/v1",  # 使用正确的API版本端点
            )

system_prompt = """
你是一位专业的起名大师，精通中国传统文化、八字命理和姓名学。请根据用户提供的八字排盘数据为其推荐合适的名字。

**输入信息（以下均为可选）：**
- 八字排盘数据（JSON格式，包含完整的八字信息）
- 姓氏
- 性别
- 辈份字（家族字辈，如"文"、"志"、"德"等）
- 取名偏好（喜欢的字词、含义等）
- 取名风格（经典传统/时尚新颖/诗意文雅/独特个性/其他）
- 避免用字（不喜欢的字、忌讳的字等）
- 期望名字数量

**八字分析流程：**
1. **基础信息提取**：
   - 出生时间：年月日时
   - 八字：年柱、月柱、日柱、时柱
   - 十神：日元、正官、偏官、正财、偏财、正印、偏印、食神、伤官、比肩、劫财
   - 纳音五行
   - 神煞信息

2. **命理分析**：
   - 分析日主强弱（结合月令、地支藏干、天干地支关系）
   - 确定喜用神和忌神
   - 分析五行缺失和过旺情况
   - 考虑大运流年对命局的影响
   - 结合神煞信息进行综合分析

3. **起名原则**：
   - - **辈分字优先**：如果提供辈份字，必须将其包含在名字中
   - 优先选择喜用神对应的五行字
   - 避免使用忌神对应的五行字
   - 结合姓氏与名字的音韵搭配
   - 注重字义美好，寓意积极
   - 符合性别特征和文化传统
   - 避免生僻字和难写难读的字
   - 考虑名字的整体美感
   - 结合神煞信息选择有利的字

**名字结构说明：**
- **有辈分字**：姓氏 + 辈分字 + 另一个字（如：李文轩）
- **无辈分字**：姓氏 + 两个字（如：李轩文）

**输出格式：**
请为每个推荐的名字提供：
- 完整姓名
- 字义解释
- 寓意说明
- 五行属性
- 与喜用神的配合关系
- 音韵特点
- 与命局的契合度分析

**示例分析：**
李昕玥 (Lǐ Xīn Yuè)
字义：
昕：黎明，太阳将要升起的时候。五行属 火。寓意光明、希望、朝气蓬勃。
玥：古代传说中的神珠。五行属 土 (王字旁玉属土)。寓意珍贵、吉祥、高洁。
寓意说明： 如黎明般充满希望和光明的珍贵明珠。寄托了父母希望孩子如初升朝阳般温暖明亮，像珍宝一样独特而美好。名字充满祥瑞之气。
五行属性： 昕(火) + 玥(土) = 火土相生 (火生土，增强用神土的力量)。
与喜用神配合： 完美契合。主用火，次用土，火土相生，能量流通顺畅。完全规避金水。
音韵特点： “李”(Lǐ, ˇ) + “昕”(Xīn, ˉ) + “玥”(Yuè, ˋ)。声调为上声-阴平-去声，起伏有致，读音响亮清晰，尾音稳重。“昕玥”二字搭配柔美雅致。
与命局契合度： 极高。“昕”补强日主丙火（太阳），带来光明和能量，改善身弱。“玥”顺应旺土之势，取其珍贵、祥瑞之意，呼应神煞中的贵人、华盖气质。火土组合有力化解原局土金过旺对日主的压力。
"""
prompt = """

- 八字排盘数据："{
  "status": 0,
  "msg": "ok",
  "result": {
    "year": "2009",
    "month": "10",
    "day": "18",
    "hour": "02",
    "minute": "05",
    "name": "请输入姓名",
    "city": "桂林",
    "sex": 1,
    "istaiyang": 0,
    "lunaryear": 2009,
    "lunarmonth": "九月",
    "lunarday": "初一",
    "lunarhour": "丑时",
    "animal": "牛",
    "yearganzhi": "己丑",
    "jieqiprev": {
      "jieqiname": "寒露",
      "date": "2009-10-08 11:40:03"
    },
    "jieqinext": {
      "jieqiname": "立冬",
      "date": "2009-11-07 14:56:15"
    },
    "bazi": [
      "己丑",
      "甲戌",
      "丙申",
      "己丑"
    ],
    "taiyuan": "乙丑",
    "minggong": "庚午",
    "xunkong": [
      "午未",
      "申酉",
      "辰巳",
      "午未"
    ],
    "qiyun": {
      "year": 3,
      "month": 2,
      "day": 12,
      "hour": 2
    },
    "jiaoyun": {
      "year": "2012",
      "month": "12",
      "day": "30",
      "hour": "04"
    },
    "qiankunzao": [
      [
        "伤官",
        "偏印",
        "日元",
        "伤官"
      ],
      [
        "己丑",
        "甲戌",
        "丙申",
        "己丑",
        "(辰巳空)"
      ],
      [
        [
          "癸正官",
          "辛正财",
          "戊食神",
          "癸正官"
        ],
        [
          "辛正财",
          "丁劫财",
          "庚偏财",
          "辛正财"
        ],
        [
          "己伤官",
          "戊食神",
          "壬七杀",
          "己伤官"
        ]
      ]
    ],
    "nayin": [
      "霹雳火",
      "山头火",
      "山下火",
      "霹雳火"
    ],
    "shensha": [
      [
        "太极贵人",
        "华盖",
        "国印贵人",
        "十恶大败"
      ],
      [
        "太极贵人",
        "寡宿",
        "吊客"
      ],
      [
        "天乙贵人",
        "天喜",
        "亡神",
        "天德贵人",
        "月德贵人",
        "文昌贵人",
        "十恶大败"
      ],
      [
        "太极贵人",
        "华盖",
        "国印贵人",
        "十恶大败"
      ]
    ],
    "dayun": {
      "nayin": [
        "山头火",
        "剑锋金",
        "剑锋金",
        "路旁土",
        "路旁土",
        "大林木",
        "大林木",
        "炉中火",
        "炉中火",
        "海中金"
      ],
      "shishen": [
        "偏印",
        "正官",
        "七杀",
        "正财",
        "偏财",
        "伤官",
        "食神",
        "劫财",
        "比肩",
        "正印"
      ],
      "ganzhi": [
        "甲戌",
        "癸酉",
        "壬申",
        "辛未",
        "庚午",
        "己巳",
        "戊辰",
        "丁卯",
        "丙寅",
        "乙丑"
      ],
      "sui": [
        "1-2岁",
        "3岁",
        "13岁",
        "23岁",
        "33岁",
        "43岁",
        "53岁",
        "63岁",
        "73岁",
        "83岁"
      ],
      "year": [
        "2009",
        2012,
        2022,
        2032,
        2042,
        2052,
        2062,
        2072,
        2082,
        2092
      ]
    },
    "liunian": [
      [
        "己丑",
        "壬辰",
        "壬寅",
        "壬子",
        "壬戌",
        "壬申",
        "壬午",
        "壬辰",
        "壬寅",
        "壬子",
        "壬戌",
        "壬申"
      ],
      [
        "庚寅",
        "癸巳",
        "癸卯",
        "癸丑",
        "癸亥",
        "癸酉",
        "癸未",
        "癸巳",
        "癸卯",
        "癸丑",
        "癸亥",
        "癸酉"
      ],
      [
        "辛卯",
        "甲午",
        "甲辰",
        "甲寅",
        "甲子",
        "甲戌",
        "甲申",
        "甲午",
        "甲辰",
        "甲寅",
        "甲子",
        "甲戌"
      ],
      [
        " ",
        "乙未",
        "乙巳",
        "乙卯",
        "乙丑",
        "乙亥",
        "乙酉",
        "乙未",
        "乙巳",
        "乙卯",
        "乙丑",
        "乙亥"
      ],
      [
        " ",
        "丙申",
        "丙午",
        "丙辰",
        "丙寅",
        "丙子",
        "丙戌",
        "丙申",
        "丙午",
        "丙辰",
        "丙寅",
        "丙子"
      ],
      [
        " ",
        "丁酉",
        "丁未",
        "丁巳",
        "丁卯",
        "丁丑",
        "丁亥",
        "丁酉",
        "丁未",
        "丁巳",
        "丁卯",
        "丁丑"
      ],
      [
        " ",
        "戊戌",
        "戊申",
        "戊午",
        "戊辰",
        "戊寅",
        "戊子",
        "戊戌",
        "戊申",
        "戊午",
        "戊辰",
        "戊寅"
      ],
      [
        " ",
        "己亥",
        "己酉",
        "己未",
        "己巳",
        "己卯",
        "己丑",
        "己亥",
        "己酉",
        "己未",
        "己巳",
        "己卯"
      ],
      [
        " ",
        "庚子",
        "庚戌",
        "庚申",
        "庚午",
        "庚辰",
        "庚寅",
        "庚子",
        "庚戌",
        "庚申",
        "庚午",
        "庚辰"
      ],
      [
        " ",
        "辛丑",
        "辛亥",
        "辛酉",
        "辛未",
        "辛巳",
        "辛卯",
        "辛丑",
        "辛亥",
        "辛酉",
        "辛未",
        "辛巳"
      ]
    ]
  }
}"
- 姓氏：莫
- 性别：男
- 辈份字：青
- 取名偏好：无
- 取名风格：无
- 避免用字：无
- 期望名字数量：5

"""
messages = []
messages.append({"role": "system", "content": system_prompt})
messages.append({"role": "user", "content": prompt})

response = client.chat.completions.create(
    model="deepseek-reasoner",
    messages=messages,
    temperature=0.5,
    response_format={"type": "json_object"}
)
print(response.choices[0].message.content)